package com.hooper.login.anno;

import com.hooper.login.entity.Roles;

import java.lang.annotation.*;

/**
 * @author Tim Hooper
 * @version 1.0
 * @time 2022/12/28/14:54
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AuthCheck {
    /**
     * 是否为管理员才能访问
     *
     * @return
     */
    boolean isAdmin() default false;

    /**
     * 可访问的角色列表
     *
     * @return
     */
    Roles[] allowRoles() default {};

    /**
     * 不可访问的角色列表
     *
     * @return
     */
    Roles[] exceptRoles() default {Roles.VIOLATION};
}
